#include <iostream>
#include <vector>
#include <string>
#include <stack>
using namespace std;

struct TreeNode
{
    int val;
    TreeNode* left;
    TreeNode* right;
};

vector<int> inorderTraversal(TreeNode* root)
{
    stack<TreeNode*> s;
    vector<int> v;
    TreeNode* cur = root;
    while(cur || !s.empty())
    {
        while(cur)
        {
            s.push(cur);
            cur = cur->left;
        }
        TreeNode* top = s.top();
        v.push_back(top->val);
        s.pop();
        cur = top->right;
    }

}

int main()
{
    cout << "hello world"<<endl;
    return 0;
}

